var outilVisionneuseHauteurBande = 130;

function initialiserPositions() {
	/*if (navigator.appName == 'Microsoft Internet Explorer') {
		$("#bandeMiniatures").css('top', outilPopupHeightPopup - 160);
		$("#bandeMiniatures").css('width', outilPopupWidthPopup - 40);
	} else {
		$("#bandeMiniatures").css('top', outilPopupHeightPopup - 120 + 40);
	}*/
	$("#bandeMiniatures").css('top', outilPopupHeightPopup - outilVisionneuseHauteurBande + 2 * outilPopupPadding);
}

function ouvrirPopupVisionneuse(idAlbumPhoto, nomPhotoParDefaut) {
	if (typeof(nomCompletPhotoParDefaut)=='undefined') {
		nomCompletPhotoParDefaut = "";
	}
	$("#photoVisionneuse").attr("src", "");
	
	ouvrirGrandePopup("/outils/photo/visionneuse.php?idAlbumPhoto=" + idAlbumPhoto + "&nomPhotoParDefaut=" + nomPhotoParDefaut, initialiserPositions, onSizeChange);
}

function onSizeChange() {
	initialiserPositions();
	redimmensionnerImage();
}

var largeurReelleImageChargee = 0;
var hauteurReelleImageChargee = 0;

function redimmensionnerImage() {
	var photo= $("#photoVisionneuse");
	photo.removeAttr("width");
	photo.removeAttr("height");
	
	var hauteurImage = hauteurReelleImageChargee;
	var largeurImage = largeurReelleImageChargee;
	var ratioImage = largeurImage / hauteurImage;
	var hauteurMaxi = getHauteurMaxiImage();
	var largeurMaxi = getLargeurMaxiImage();
	var hauteurImageApresModifications = hauteurImage;
	var largeurImageApresModifications = largeurImage;
	
	var taillesModifiees = false;
	console.log("changement taille popup : " + outilPopupWidthPopup + ", " + outilPopupHeightPopup);
	if (hauteurImage > hauteurMaxi) {
		hauteurImageApresModifications = hauteurMaxi;
		largeurImageApresModifications = hauteurMaxi * ratioImage;
		console.log("Changement taille image 1 : " + largeurImageApresModifications + ", " + hauteurMaxi);
		photo.attr('height', hauteurMaxi);
		photo.attr('width', largeurImageApresModifications);
		
		//OK pour la hauteur, vérifie que la largeur n'est pas toujours trop grande
		if (largeurImageApresModifications > largeurMaxi) {
			console.log("Changement taille image 2 : " + largeurMaxi + ", " + largeurMaxi / ratioImage);
			//Si c'est la cas, on se base sur la largeur pour trouver la taille maxi
			photo.attr('width', largeurMaxi);
			photo.attr('height', largeurMaxi / ratioImage);
		}
		
		taillesModifiees = true;
	}
	if (largeurImage > largeurMaxi) {
		hauteurImageApresModifications = largeurMaxi / ratioImage;
		largeurImageApresModifications = largeurMaxi;
		console.log("Changement taille image 3 : " + largeurMaxi + ", " + hauteurImageApresModifications);
		photo.attr('width', largeurMaxi);
		photo.attr('height', hauteurImageApresModifications);
		
		//OK pour la largeur, vérifie que la hauteur n'est pas toujours trop grande
		if (hauteurImageApresModifications > hauteurMaxi) {
			console.log("Changement taille image 4 : " +  hauteurMaxi * ratioImage + ", " + hauteurMaxi);
			//dans ce cas, on se base sur la hauteur pour trouver la taille maxi
			photo.attr('height', hauteurMaxi);
			photo.attr('width', hauteurMaxi * ratioImage);
		}
		
		taillesModifiees = true;
	}
	
	if (!taillesModifiees) {
		console.log("Changement taille image 5 : " + largeurImage + ", " + hauteurImage);
		photo.attr('width', largeurImage);
		photo.attr('height', hauteurImage);
	}
	
	//empèche d'avoir des tailles <=0
	if (photo.attr('width') < 1) {
		photo.attr('width', 1);
	}
	if (photo.attr('height') < 1) {
		photo.attr('height', 1);
	}
	
	var positionGauche = (getLargeurMaxiImage() - photo.attr('width')) / 2 + 10;
	photo.css('left', positionGauche);
}

function chargerImage(nomPhoto) {
	var photo= $("#photoVisionneuse");
	//photo.css("display","none");
	photo.fadeOut(100, function() {
		var monImage = new Image();
		monImage.onload = function(){
			largeurReelleImageChargee = monImage.width;
			hauteurReelleImageChargee = monImage.height;
			
			//Redimmensionnement de l'image
			redimmensionnerImage();
			photo.attr("src", monImage.src);
			//photo.css("display","block");
			photo.fadeIn(100);
		}
		monImage.src = nomPhoto;
	});	
}

function getHauteurMaxiImage() {
	//if (navigator.appName == 'Microsoft Internet Explorer') {
	//	return outilPopupHeightPopup - 210 - 2 * getMargeImage();
	//} else {
		return outilPopupHeightPopup - outilVisionneuseHauteurBande - 2 * getMargeImage();
	//}
}

function getLargeurMaxiImage() {
	//if (navigator.appName == 'Microsoft Internet Explorer') {
	//	return outilPopupWidthPopup - 80 - 2 * getMargeImage();
	//} else {
		return outilPopupWidthPopup - 2 * getMargeImage();
	//}
}

function getMargeImage() {
	return 0;
}